자동으로 생성되는 cf-templates 버킷은 왜 생성될까?
안녕하세요 클래스메소드 김재욱(Kim Jaewook) 입니다. 이번에는 자동으로 생성되는 cf-templates 버킷이 왜 생성되는 지 확인해 봤습니다.
cf-templates 버킷
버킷 목록을 확인해 보면 cf-templates로 시작하는 의문의 버킷이 생성되어 있는 것을 확인할 수 있습니다.
로컬 템플릿 파일을 업로드하는 경우 CloudFormation에서는 해당 파일을 AWS 계정의 Amazon Simple Storage Service(Amazon S3) 버킷에 업로드합니다. CloudFormation에서 생성한 S3 버킷이 아직 없는 경우 템플릿 파일을 업로드하는 각 리전에 대해 고유한 버킷이 생성됩니다.
AWS 공식문서에 따르면 CloudFormation 템플릿 파일을 업로드할 경우 S3 버킷에 템플릿 파일을 업로드하고, S3 버킷이 없다면 템플릿 파일을 업로드하는 고유의 버킷이 생성됩니다.
CloudFormation 스택 생성
그렇다면 스택을 생성할 때 S3 버킷이 생성되는 지 확인해 보겠습니다.
테스트를 위해 서울 리전에 존재하는 cf-templates 버킷을 삭제하고 스택을 생성합니다.
VPC를 생성하는 VPC.yml 파일을 이용해 스택을 생성하니 서울 리전에 cf-templates 버킷이 생성되고, 버킷 내부에는 VPC.yml 객체가 업로드된 것을 확인할 수 있습니다.
객체를 다운로드 받아 확인해 보면, 조금 전 스택 생성에 사용했던 CloudFormation인 것을 확인할 수 있습니다.
AWS 공식문서에서 설명했던 것과 같이 CloudFormation 템플릿 파일을 업로드할 경우 S3 버킷에 템플릿 파일을 업로드하는 것을 확인할 수 있습니다.
그렇다면 직접 S3 버킷을 생성하고 템플릿 파일을 업로드한다면 어떻게 될까요?
서울 리전에 테스트용 버킷을 만들고 VPC.yml이라는 CloudFormation 템플릿 파일을 업로드합니다.
이번에는 CloudFormation 스택 생성에서 Amazon S3 URL을 이용하여 스택을 생성합니다.
스택이 생성되고, 버킷을 확인해 보면 별도로 생성된 버킷은 없으며 기존에 생성한 버킷에서도 별다른 변화는 없습니다.
결과적으로는 CloudFormation 스택 생성 시 버킷 생성과 CloudFormation 템플릿 파일 업로드는 자동으로 이루어지며, cf-templates 버킷 생성을 막고자 한다면, 별도의 버킷에 템플릿 파일을 업로드하여 스택을 생성할 수 밖에 없습니다.
본 블로그 게시글을 읽고 궁금한 사항이 있으신 분들은 jaewookkim533@yahoo.com로 보내주시면 감사하겠습니다.